/*
//
//              INTEL CORPORATION PROPRIETARY INFORMATION
//  This software is supplied under the terms of a license  agreement or
//  nondisclosure agreement with Intel Corporation and may not be copied
//  or disclosed except in  accordance  with the terms of that agreement.
//    Copyright (c) 2007-2008 Intel Corporation. All Rights Reserved.
//
//
*/

#ifndef __UMC_AVS_ENC_SLICE_H
#define __UMC_AVS_ENC_SLICE_H

#include "umc_avs_slice.h"
#include "umc_avs_list.h"

namespace UMC
{

class AVSEncSlice : public AVSListElement<AVSSlice>
{
public:
    // Default constructor
    AVSEncSlice(void);
    // Destructor
    virtual
    ~AVSEncSlice(void);

    // Reset states of all processes in the slice
    virtual
    Status Reset(const AVS_SEQUENCE_HEADER *pSeqHeader,
                 const AVS_PICTURE_HEADER *pPicHeader);

    AVS_DISASSEMBLING_CONTEXT m_disCtx;                         // (AVS_DISASSEMBLING_CONTEXT) slice's disassembling state

protected:
};

} // namespace UMC

#endif // __UMC_AVS_ENC_SLICE_H
